﻿using MessageBus.Const;
using System;
using System.Threading.Tasks;

namespace MessageBus
{
    public interface IMessageBus : IDisposable
    {
        BrokerType Type { get; }

        string IP { get; }

        ushort Port { get; }

        string Username { get; }

        string Passwd { get; }

        string VirtualHost { get; }

        Task<bool> StartAsync();

        Task StopAsync();

    }
}